package ejb.com.bbva.cbm.service;
import java.io.Serializable;
import java.util.List;
import java.util.Map;

//import javax.ejb.Local;

import ejb.cbm.admin.entity.CentroCostoProtegidoEntity;
import ejb.cbm.admin.entity.ParametroEntity;
import ejb.cbm.admin.entity.TipoParametroEntity;
import ejb.cbm.admin.entity.TransaccionEntity;
import ejb.cbm.admin.entity.TransaccionSegmentoEntity;
import ejb.cbm.seguridad.entity.PerfilEntity;
import ejb.com.bbva.cbm.dominio.CentroCostoEntity;
import ejb.com.bbva.cbm.dominio.DenominacionEntity;
import ejb.com.bbva.cbm.dominio.TransaccionPerfilEntity;
import ejb.com.bbva.cbm.util.DatosInicioAplicacion;

////@Local
public interface AdministracionServiceLocal {

    List<TipoParametroEntity> obtenerTiposParametrosTodos() throws Exception;
    List<ParametroEntity> obtenerParametrosTodos() throws Exception;
    List<DenominacionEntity> obtenerDenominaciones() throws Exception;
	
	/************************************************************************************************
	 * INICIO DE APLICACION
	 ************************************************************************************************/
    DatosInicioAplicacion obtenerDatosInicioAplicacion() throws Exception;
    void guardarInicioAplicacion(DatosInicioAplicacion datosInicioAplicacion) throws Exception;
    void iniciarAplicacion(Map datos) throws Exception;
    void terminarAplicacion(Map datos) throws Exception;
    
	List<TransaccionEntity> obtenerTransaccionesInicioAplicacion() throws Exception;
	List<CentroCostoProtegidoEntity> obtenerCentrosCostoProtegidoInicioAplicacion() throws Exception;
    List<TransaccionPerfilEntity> obtenerTransaccionesPerfilInicioAplicacion() throws Exception;
	List<TransaccionSegmentoEntity> obtenerTransaccionesPorSegmentoInicioAplicacion(Integer transaccionId, Integer segmentoId) throws Exception;
	
	CentroCostoEntity obtenerCentroCostoPorId(Serializable id) throws Exception;
	List<CentroCostoEntity> obtenerCentrosCostoPorIdNombre(String filtro) throws Exception;
	PerfilEntity obtenerPerfilPorId(Serializable id) throws Exception;
    List<PerfilEntity> obtenerPerfilesPorIdNombre(String filtro) throws Exception;
}
